
server.o:     file format elf64-littleaarch64


Disassembly of section .text:

0000000000000000 <main>:
   0:	a9b87bfd 	stp	x29, x30, [sp, #-128]!
   4:	910003fd 	mov	x29, sp
   8:	f9000bf3 	str	x19, [sp, #16]
   c:	b9002fa0 	str	w0, [x29, #44]
  10:	f90013a1 	str	x1, [x29, #32]
  14:	90000000 	adrp	x0, 0 <main>
  18:	91000001 	add	x1, x0, #0x0
  1c:	9100c3a0 	add	x0, x29, #0x30
  20:	a9400c22 	ldp	x2, x3, [x1]
  24:	a9000c02 	stp	x2, x3, [x0]
  28:	f9400822 	ldr	x2, [x1, #16]
  2c:	f9000802 	str	x2, [x0, #16]
  30:	79403021 	ldrh	w1, [x1, #24]
  34:	79003001 	strh	w1, [x0, #24]
  38:	b9402fa0 	ldr	w0, [x29, #44]
  3c:	7100081f 	cmp	w0, #0x2
  40:	54000121 	b.ne	64 <main+0x64>  // b.any
  44:	f94013a0 	ldr	x0, [x29, #32]
  48:	91002000 	add	x0, x0, #0x8
  4c:	f9400000 	ldr	x0, [x0]
  50:	94000000 	bl	0 <atoi>
  54:	b9007fa0 	str	w0, [x29, #124]
  58:	b9407fa0 	ldr	w0, [x29, #124]
  5c:	7100001f 	cmp	w0, #0x0
  60:	5400010a 	b.ge	80 <main+0x80>  // b.tcont
  64:	f94013a0 	ldr	x0, [x29, #32]
  68:	f9400001 	ldr	x1, [x0]
  6c:	90000000 	adrp	x0, 0 <main>
  70:	91000000 	add	x0, x0, #0x0
  74:	94000000 	bl	0 <printf>
  78:	52800020 	mov	w0, #0x1                   	// #1
  7c:	94000000 	bl	0 <exit>
  80:	52800002 	mov	w2, #0x0                   	// #0
  84:	52800021 	mov	w1, #0x1                   	// #1
  88:	52800040 	mov	w0, #0x2                   	// #2
  8c:	94000000 	bl	0 <socket>
  90:	b9007ba0 	str	w0, [x29, #120]
  94:	b9407ba0 	ldr	w0, [x29, #120]
  98:	3100041f 	cmn	w0, #0x1
  9c:	540000c1 	b.ne	b4 <main+0xb4>  // b.any
  a0:	90000000 	adrp	x0, 0 <main>
  a4:	91000000 	add	x0, x0, #0x0
  a8:	94000000 	bl	0 <perror>
  ac:	52800020 	mov	w0, #0x1                   	// #1
  b0:	94000000 	bl	0 <exit>
  b4:	910183a0 	add	x0, x29, #0x60
  b8:	d2800201 	mov	x1, #0x10                  	// #16
  bc:	94000000 	bl	0 <bzero>
  c0:	52800040 	mov	w0, #0x2                   	// #2
  c4:	7900c3a0 	strh	w0, [x29, #96]
  c8:	52800000 	mov	w0, #0x0                   	// #0
  cc:	94000000 	bl	0 <htonl>
  d0:	b90067a0 	str	w0, [x29, #100]
  d4:	b9407fa0 	ldr	w0, [x29, #124]
  d8:	12003c00 	and	w0, w0, #0xffff
  dc:	94000000 	bl	0 <htons>
  e0:	12003c00 	and	w0, w0, #0xffff
  e4:	7900c7a0 	strh	w0, [x29, #98]
  e8:	910183a0 	add	x0, x29, #0x60
  ec:	52800202 	mov	w2, #0x10                  	// #16
  f0:	aa0003e1 	mov	x1, x0
  f4:	b9407ba0 	ldr	w0, [x29, #120]
  f8:	94000000 	bl	0 <bind>
  fc:	3100041f 	cmn	w0, #0x1
 100:	540000c1 	b.ne	118 <main+0x118>  // b.any
 104:	90000000 	adrp	x0, 0 <main>
 108:	91000000 	add	x0, x0, #0x0
 10c:	94000000 	bl	0 <perror>
 110:	52800020 	mov	w0, #0x1                   	// #1
 114:	94000000 	bl	0 <exit>
 118:	52800081 	mov	w1, #0x4                   	// #4
 11c:	b9407ba0 	ldr	w0, [x29, #120]
 120:	94000000 	bl	0 <listen>
 124:	3100041f 	cmn	w0, #0x1
 128:	540000c1 	b.ne	140 <main+0x140>  // b.any
 12c:	90000000 	adrp	x0, 0 <main>
 130:	91000000 	add	x0, x0, #0x0
 134:	94000000 	bl	0 <perror>
 138:	52800020 	mov	w0, #0x1                   	// #1
 13c:	94000000 	bl	0 <exit>
 140:	52800200 	mov	w0, #0x10                  	// #16
 144:	b90073a0 	str	w0, [x29, #112]
 148:	9101c3a1 	add	x1, x29, #0x70
 14c:	910143a0 	add	x0, x29, #0x50
 150:	aa0103e2 	mov	x2, x1
 154:	aa0003e1 	mov	x1, x0
 158:	b9407ba0 	ldr	w0, [x29, #120]
 15c:	94000000 	bl	0 <accept>
 160:	b90077a0 	str	w0, [x29, #116]
 164:	b94077a0 	ldr	w0, [x29, #116]
 168:	3100041f 	cmn	w0, #0x1
 16c:	540000c1 	b.ne	184 <main+0x184>  // b.any
 170:	90000000 	adrp	x0, 0 <main>
 174:	91000000 	add	x0, x0, #0x0
 178:	94000000 	bl	0 <perror>
 17c:	52800020 	mov	w0, #0x1                   	// #1
 180:	94000000 	bl	0 <exit>
 184:	b94057a0 	ldr	w0, [x29, #84]
 188:	94000000 	bl	0 <inet_ntoa>
 18c:	aa0003f3 	mov	x19, x0
 190:	7940a7a0 	ldrh	w0, [x29, #82]
 194:	94000000 	bl	0 <ntohs>
 198:	12003c00 	and	w0, w0, #0xffff
 19c:	2a0003e1 	mov	w1, w0
 1a0:	90000000 	adrp	x0, 0 <main>
 1a4:	91000000 	add	x0, x0, #0x0
 1a8:	2a0103e2 	mov	w2, w1
 1ac:	aa1303e1 	mov	x1, x19
 1b0:	94000000 	bl	0 <printf>
 1b4:	9100c3a0 	add	x0, x29, #0x30
 1b8:	94000000 	bl	0 <strlen>
 1bc:	aa0003e1 	mov	x1, x0
 1c0:	9100c3a0 	add	x0, x29, #0x30
 1c4:	aa0103e2 	mov	x2, x1
 1c8:	aa0003e1 	mov	x1, x0
 1cc:	b94077a0 	ldr	w0, [x29, #116]
 1d0:	94000000 	bl	0 <write>
 1d4:	b100041f 	cmn	x0, #0x1
 1d8:	540000c1 	b.ne	1f0 <main+0x1f0>  // b.any
 1dc:	90000000 	adrp	x0, 0 <main>
 1e0:	91000000 	add	x0, x0, #0x0
 1e4:	94000000 	bl	0 <perror>
 1e8:	52800020 	mov	w0, #0x1                   	// #1
 1ec:	94000000 	bl	0 <exit>
 1f0:	b94077a0 	ldr	w0, [x29, #116]
 1f4:	94000000 	bl	0 <close>
 1f8:	17ffffd2 	b	140 <main+0x140>
